﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using Logik;

namespace Suprojekt
{    
    public partial class Login : Form
    {
        private Logikhantering logikhantering = new Logikhantering();
        private string losenResultat;
        private string anvandarResultat; 
        Applikation applikationen;
        
        public Login(Applikation applikationen)
        {
            this.applikationen = applikationen;
            InitializeComponent();         

        }

        private void LoginBtnAvbryt_Click(object sender, EventArgs e)
        {

            
            Label l = applikationen.OmInloggad();
            l.Text = "NEJ";

            this.Close();
        }

        private void LoginbtnLogin_Click(object sender, EventArgs e)
        {
            loginmetod();
        }
        private int agenturNr;

        private void loginmetod()
        {
            string[] omvandla = new string[] {LogintxtBoxID.Text };
            bool omvandlingLyckades = logikhantering.IntParseLyckades(omvandla);
            if (omvandlingLyckades == true)
            {
                agenturNr = int.Parse(LogintxtBoxID.Text);
            }
            else
            {
                MessageBox.Show("Error, Du måste fylla i ditt medlemsID med ett heltal");
                LogintxtBoxLosenord.Text = "";
                LogintxtBoxID.Text = "";
            }

            if (LogintxtBoxLosenord.Text == "")
            {
                MessageBox.Show("Du måste fylla i ett lösenord");
                LogintxtBoxLosenord.Text = "";
                LogintxtBoxID.Text = "";
            }
            if (LogintxtBoxID.Text == "")
            {
                MessageBox.Show("Du måste fylla i ett medlemsID");
                LogintxtBoxLosenord.Text = "";
                LogintxtBoxID.Text = "";
            }

            bool loggIn = logikhantering.anstallda.LoggaIn(LogintxtBoxLosenord.Text, agenturNr);
            if (loggIn == true)
            {
                Int64 personnummer = logikhantering.HämtaAnställdPersNr(agenturNr);
                Int64 ID =logikhantering.geBehöright(personnummer);
                TextBox t = applikationen.SetTextboxInloggad();
                t.Text = logikhantering.HittaInloggadAnvändare(agenturNr);

                Label idet = applikationen.BehorighetsId();
                idet.Text = ID.ToString();

                Label l = applikationen.OmInloggad();
                l.Text = "JA";

                Label lb = applikationen.geAgentNr();
                lb.Text = agenturNr.ToString();

                
                this.Close();
            }
            if (loggIn == false)
            {
                MessageBox.Show("Inloggningen misslyckades");
                LogintxtBoxLosenord.Text = "";
                LogintxtBoxID.Text = "";
            }            
        }
        
        
        #region Get / Set
        public string LosenResultat
        {
            get { return losenResultat; }
            set { losenResultat = value; }
        }

        public string AnvandarResultat
        {
            get { return anvandarResultat; }
            set { anvandarResultat = value; }
        }
        #endregion

        private void Login_Load(object sender, EventArgs e)
        {   
        }
    }
}
